<?php

use classes;
use Entities;
$em->getConnection()->beginTransaction();


$idOs = get_request("idOs");

$idProduto = get_request("idProduto");
$quantidade = get_request("quantidade");

$os = $em->find("\Entities\OrdemServico", $idOs);

$produto = $em->find("\Entities\Produto", $idProduto);

$itemOs = new Entities\ItemOs();

$itemOs->setUnidadeMedida($produto->getUnidadeMedida());

$itemOs->setProduto($produto);

$itemOs->setQuantidade($quantidade);

$itemOs->setPrecisao($produto->getPrecisao());

$itemOs->setOrdemServico($os);

$estoque = new \Entities\Estoque();

$estoque->setDataEntradaSaida(new DateTime());

$estoque->setObs("Gerado Automatico via sistema OS");
$estoque->setProduto($produto);
$estoque->setTipo("SAIDA");
$estoque->setItemOsReferencia($itemOs);
$estoque->setQtd($quantidade);


$itemOs->setEstoque($estoque);

$g = new classes\GerenciadorEstoque();

$g->removeSaldo($estoque, $quantidade);




$em->persist($itemOs);
$em->persist($produto);
$em->persist($estoque);

$erro = "0";
try {
	$em->flush();
	$em->getConnection()->commit();
	
} catch (Exception $e) {
	$erro = $e->getMessage();
	$em->getConnection()->rollback();
	
}


echo "<error>$erro</error>";


